package com.app.ryjy.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 隶属关系枚举
 */
@AllArgsConstructor
@Getter
public enum AffiliationRelationshipEnum {
    // 中央
    CENTER("中央", 10, -1),
    // 省
    PROVINCE("省", 20, -1),
    // 市、地区
    CITY_REGION("市、地区", 40, -1),
    // 县（区）
    COUNTY_DISTRICT("县（区）", 50, -1),
    // 区
    DISTRICT("区", 51, -1),
    // 县
    COUNTY("县", 52, -1),
    // 街道、镇、乡
    STREET_TOWNSHIP("街道、镇、乡", 60, -1),
    // 街道
    STREET("街道", 61, -1),
    // 镇
    TOWN("镇", 62, -1),
    // 乡
    TOWNSHIP("乡", 63, -1),
    // 居民、村民委员会
    RESIDENT_VILLAGE_COMMITTEE("居民、村民委员会", 70, -1),
    // 居民委员会
    RESIDENT_COMMITTEE("居民委员会", 71, -1),
    // 村民委员会
    VILLAGE_COMMITTEE("村民委员会", 72, -1),
    // 军队
    ARMY("军队", 80, -1),
    // 其他
    OTHER("其他", 90, -1);

    private final String desc;
    private final int code;
    private final int bizCode;

    /**
     * 根据bizCode获取code
     *
     * @param bizCode bizCode
     * @return code
     */
    public static int getCodeByBizCode(int bizCode) {
        for (AffiliationRelationshipEnum affiliationRelationship : values()) {
            if (affiliationRelationship.getBizCode() == bizCode) {
                return affiliationRelationship.getCode();
            }
        }
        throw new RuntimeException("bizCode不存在"); // 或者抛出一个异常，如果bizCode不存在
    }

    public static void main(String[] args) {
        System.out.println(AffiliationRelationshipEnum.getCodeByBizCode(10));
    }
}